Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DRAFT] TEZ-4505: Create counters about time intervals spent in certain states in StateMachineTez #304

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

abstractdog
Copy link
Contributor

No description provided.

@tez-yetus

This comment was marked as outdated.

@tez-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 18s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
-1 ❌ test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ master Compile Tests _
+0 🆗 mvndep 5m 40s Maven dependency ordering for branch
+1 💚 mvninstall 8m 54s master passed
+1 💚 compile 1m 25s master passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu122.04.1
+1 💚 compile 1m 24s master passed with JDK Private Build-1.8.0_362-8u372-gaus1-0ubuntu122.04-b09
+1 💚 checkstyle 1m 31s master passed
+1 💚 javadoc 1m 22s master passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu122.04.1
+1 💚 javadoc 1m 7s master passed with JDK Private Build-1.8.0_362-8u372-gaus1-0ubuntu122.04-b09
+0 🆗 spotbugs 1m 22s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 2m 56s master passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 11s Maven dependency ordering for patch
+1 💚 mvninstall 0m 50s the patch passed
+1 💚 compile 0m 56s the patch passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu122.04.1
+1 💚 javac 0m 56s the patch passed
+1 💚 compile 0m 47s the patch passed with JDK Private Build-1.8.0_362-8u372-gaus1-0ubuntu122.04-b09
+1 💚 javac 0m 47s the patch passed
-0 ⚠️ checkstyle 0m 26s tez-dag: The patch generated 8 new + 206 unchanged - 0 fixed = 214 total (was 206)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 javadoc 0m 35s the patch passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu122.04.1
+1 💚 javadoc 0m 36s the patch passed with JDK Private Build-1.8.0_362-8u372-gaus1-0ubuntu122.04-b09
+1 💚 findbugs 2m 17s the patch passed
_ Other Tests _
+1 💚 unit 2m 19s tez-api in the patch passed.
-1 ❌ unit 5m 40s tez-dag in the patch failed.
+1 💚 asflicense 0m 23s The patch does not generate ASF License warnings.
41m 27s
Reason Tests
Failed junit tests tez.dag.app.TestSpeculation
tez.dag.app.dag.impl.TestDAGImpl
tez.dag.app.TestPreemption
tez.dag.app.dag.impl.TestCommit
tez.dag.app.TestMockDAGAppMaster
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-304/2/artifact/out/Dockerfile
GITHUB PR #304
JIRA Issue TEZ-4505
Optional Tests dupname asflicense javac javadoc unit spotbugs findbugs checkstyle compile
uname Linux 745bdcc7db9f 4.15.0-212-generic #223-Ubuntu SMP Tue May 23 13:09:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/tez.sh
git revision master / 5beab4c
Default Java Private Build-1.8.0_362-8u372-gaus1-0ubuntu122.04-b09
Multi-JDK versions /usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu122.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_362-8u372-gaus1-0ubuntu122.04-b09
checkstyle https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-304/2/artifact/out/diff-checkstyle-tez-dag.txt
unit https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-304/2/artifact/out/patch-unit-tez-dag.txt
Test Results https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-304/2/testReport/
Max. process+thread count 690 (vs. ulimit of 5500)
modules C: tez-api tez-dag U: .
Console output https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-304/2/console
versions git=2.34.1 maven=3.6.3 findbugs=3.0.1
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

Copy link
Member

@ayushtkn ayushtkn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds cool to me, I think you need to add some test around it as well

@@ -34,6 +38,10 @@ public class StateMachineTez<STATE extends Enum<STATE>, EVENTTYPE extends Enum<E

private final StateMachine<STATE, EVENTTYPE, EVENT> realStatemachine;

private boolean isStateIntervalMonitorEnabled = false;
private long lastStateChangedTime = Time.monotonicNow();
private Map<String, Long> intervalSpentInStatesMs = new HashMap<>();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this can be final

@@ -34,6 +38,10 @@ public class StateMachineTez<STATE extends Enum<STATE>, EVENTTYPE extends Enum<E

private final StateMachine<STATE, EVENTTYPE, EVENT> realStatemachine;

private boolean isStateIntervalMonitorEnabled = false;
private long lastStateChangedTime = Time.monotonicNow();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

shouldn't this be set as part of enableStateIntervalMonitor?

@@ -484,6 +493,18 @@ public TezCounters getCounters() {
}
}

private void maybeMergeAllTaskAttemptCounters(TezCounters taskCounters) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit
I think we can ditch maybe from the name & just have mergeAllTaskAttemptCounters(, if stateIntervalMontior is enabled it does merge always

*/
package org.apache.tez.common.counters;

public class TaskAttemptCounter {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I couldn't decode the usage of this 'empty' class, we are only using the name of this class, if only name is required can't we have a string constant or an enum

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is just a leftover, actually I'm in the middle of this, full of bugs, let me set this PR to [DRAFT]

@abstractdog abstractdog changed the title TEZ-4505: Create counters about time intervals spent in certain states in StateMachineTez [DRAFT] TEZ-4505: Create counters about time intervals spent in certain states in StateMachineTez Sep 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants